#include "thread_pool.h"

void lsCommand(task_t * task) {
    puts("ls doing");
    DIR *dir = opendir(".");
    struct dirent *p = NULL;

    if (dir == NULL) {
        perror("opendir"); // 使用 perror 提供更详细的错误信息
        return; // 确保在失败时函数能安全退出
    }

    char buf[1024] = {0}; // 初始化 buf 以确保其为空字符串
    while ((p = readdir(dir)) != NULL)
    {
        sprintf(buf, "%s%s\n", buf, p->d_name);
    }
    int len = strlen(buf);
    sendn(task->peerfd, &len,sizeof(len)) ;
    sendn(task->peerfd, buf, len);
    closedir(dir);
}
 
